탭 지오메트리 정렬

간략한 설명

파일: \examples\Processing\Geometry\TapGeometrySorting\TapSorting_2X_1Y.va
\examples\Processing\Geometry\TapGeometrySorting\TapSorting_2XE_1Y.va
\examples\Processing\Geometry\TapGeometrySorting\TapSorting_1X_2Y.va
\examples\Processing\Geometry\TapGeometrySorting\TapSorting_2X_2Y.va
\examples\Processing\Geometry\TapGeometrySorting\TapSorting_2X_2YE.va
\examples\Processing\Geometry\TapGeometrySorting\TapSorting_8X_1Y.va
\examples\Processing\Geometry\TapGeometrySorting\TapSorting_10X_1Y.va
\examples\Processing\Geometry\TapGeometrySorting\BaseAreaGray8_3Tap_Resorting.vad

Default Platform: mE5-MA-VCL

요약 설명

Camera Link 탭의 분류

Camera Link 탭 기하학에 관한 소이론

탭(Taps)은 카메라 센서상의 기하학적 구역입니다. 프레임의 픽셀은 탭에서 순차적인 순서대로 픽셀 단위로 프레임 그래버로 전송됩니다. 이 픽셀들은 해당 탭에서 병렬로 전송될 수 있습니다. Camera Link 의 기본 구성에서는 동일한 클럭 사이클에 전송되는 탭의 수가 1~3개이며, 중간 구성에서는 3개 또는 4개, 전체 구성에서는 8개 또는 10개입니다. 탭의 기하학적 배열은 센서 모델에 따라 다릅니다. 이러한 순서에 따라, 실제 상황을 정확히 반영하는 이미지를 얻기 위해서는 획득된 이미지의 픽셀을 재정렬해야 합니다. 카메라의 탭 기하학적 구성을 설명하기 위한 명명 규칙

식 (31).


사용됩니다. 이에 따라 는 수평 및 수직 방향의 탭 수입니다. 탭에서 동시에 전송되는 X 및 Y 방향의 연속 픽셀 수는 다음과 같습니다. . "E", "M" 또는 "R"로 명명될 수 있습니다. "E"는 탭별 판독이 픽셀 행/열의 양 끝에서 시작된다는 것을 나타냅니다. "M"은 픽셀 추출이 행의 중간에서 시작된다는 것을 의미합니다. "R"은 픽셀 추출이 각 탭의 오른쪽 끝에서 시작된다는 것을 나타냅니다. 표에서 26 특정 탭 형상에 대해 너비 “w”와 높이 “h”를 갖는 이미지의 수평 및 수직 방향 픽셀 위치가 나열되어 있습니다.

탭 지오메트리 X 시작 X 끝 X 단계 Y 시작 Y 끝 Y 단계
2X-1Y 1을 탭하세요 1 w/2 1 1 h 1
2번 탭 w/2+1 w 1 1 h 1
2XE-1Y 1을 탭하세요 1 w/2 1 1 h 1
2번 탭 w w/2+1 1 1 h 1
1X-2Y 1을 탭하세요 1 w 1 1 h/2 1
2번 탭 1 w 1 h/2+1 h 1
2X-2Y 1을 탭하세요 1 w/2 1 1 h/2 1
2번 탭 w/2+1 w 1 1 h/2 1
3번 탭 1 w/2 1 h/2+1 h 1
4번을 탭하세요 w/2+1 w 1 h/2+1 h 1
2X-2YE 1을 탭하세요 1 w/2 1 1 h/2 1
2번 탭 w/2+1 w 1 1 h/2 1
3번 탭 1 w/2 1 h h/2+1 1
4번을 탭하세요 w/2+1 w 1 h h/2+1 1
8X-1Y 1을 탭하세요 1 w/8 1 1 h 1
2번 탭 w/8+1 1/4 와트 1 1 h 1
3번 탭 1/4 w +1 3/8 w 1 1 h 1
4번을 탭하세요 3/8 w +1 1/2 w 1 1 h 1
5번을 탭하세요 1/2 w + 1 5/8 w 1 1 h 1
6번을 탭하세요 5/8 w +1 3/4 w 1 1 h 1
7을 탭하세요 3/4 w +1 7/8 w 1 1 h 1
8을 탭하세요 7/8 w +1 w 1 1 h 1
10X-1Y 1을 탭하세요 1 w/10 1 1 h 1
2번 탭 w/10+1 1/5 와트 1 1 h 1
3번 탭 1/5 w +1 3/10 w 1 1 h 1
4번을 탭하세요 3/10 w +1 2/5 w 1 1 h 1
5번을 탭하세요 2/5 w +1 1/2 w 1 1 h 1
6번을 탭하세요 1/2 w + 1 3/5 w 1 1 h 1
7을 탭하세요 3/5 w +1 7/10 w 1 1 h 1
8을 탭하세요 7/10 w +1 4/5 1 1 h 1
9을 탭하세요 4/5 w +1 9/10 1 1 h 1
10을 탭하세요 9/10 w +1 w 1 1 h 1

표 26. 탭 형상의 예시


VisualApplets에서의 구현

위에서 설명한 탭 기하학적 모드 정렬은 7개의 별도 비주얼 애플릿 설계로 구현되었습니다. 이 설계들은 이미지 처리 설계의 일부로 사용할 수 있습니다. 탭 기하학적 모드 정렬의 시뮬레이션 및 테스트를 위해 \examples\Processing\Geometry\TapGeometrySorting\TestImages 경로에 예제 이미지가 준비되어 있습니다. 구현 알고리즘은 설계마다 다르며, 이는 구현의 복잡성과 자원 효율성 사이에서 최적의 균형을 찾기 위함입니다. 수평 방향에서 탭 기하 구조 정렬을 구현하는 가장 간단한 방법은 "TapSorting_2X_1Y.va" 및 "TapSorting_2XE_1Y.va" 설계에서 구현되어 있습니다. 그림 341에서 "TapSorting_2XE_1Y.va"의 기본 설계 구조를 확인할 수 있습니다.

"TapSorting_2XE_1Y.va"의 기본 설계 구조

그림 341. “TapSorting_2XE_1Y.va”의 기본 설계 구조


Camera Link 의 기본 구성에서 그레이스케일 카메라를 통해 수평 방향으로 들어오는 “2X” 탭 두 개의 픽셀은 두 개의 분기로 나뉩니다. 탭 2의 픽셀은 HierarchicalBox 내에서 수평 방향으로 대칭 처리됩니다 MirroredLine 에서 연산자 LineMemory연산자를 사용하여 수평 방향으로 미러링됩니다.연산자를 사용하여 수평 방향으로 거울 반전됩니다. 그런 다음 두 탭의 픽셀이 한 줄씩 새로운 이미지에 삽입됩니다. 이후 연속된 두 줄이 하나의 더 큰 줄로 결합됩니다. 이 이미지는 올바른 탭 기하 구조를 가진 출력 이미지입니다. 탭 1의 픽셀은 결과 이미지의 왼쪽 절반에 위치하고, 탭 2의 픽셀은 거울 반전으로 인해 역순으로 오른쪽 절반에 위치합니다. "TapSorting_2X_1Y.va"의 설계 구조와 알고리즘은 "TapSorting_2XE_1Y.va"와 유사하지만, 탭 2의 픽셀을 미러링하지 않는다는 점이 다릅니다. "TapSorting_1X_2Y.va", "TapSorting_2X_2Y.va" 및 "TapSorting_2X_2YE.va" 설계는 수평 방향으로 하나 또는 두 개의 탭 ("1X" 또는 "2X")을 가지고 있으며, 수직 방향으로 두 개의 탭("2Y" 및 "2YE")을 가지고 있습니다. 이 경우 탭 정렬을 수행하는 가장 효율적인 방법은 연산자 FrameBufferRandomRead연산자를 사용하는 것이 가장 효율적입니다 . 그림 342에서"TapSorting_2X_2Y.va"의 기본 설계 구조를 확인할 수 있습니다. "TapSorting_1X_2Y.va"와 "TapSorting_2X_2YE.va"의 설계 구조는 이와 동일합니다.

"TapSorting_2X_2Y.va"의 기본 설계 구조

그림 342. “TapSorting_2X_2Y.va”의 기본 설계 구조


카메라 링크 기본 구성에서 카메라로부터 전송된 픽셀은 HierarchicalBox 내에서 순서대로 재배열됩니다. 재정렬에서 순서가 재정렬됩니다. 여기서 동일한 탭에 속한 4개의 픽셀이 하나의 픽셀로 병합됩니다. 탭 1에서 탭 2 (“TapSorting_1X_2Y.va”) 또는 탭 4 (“TapSorting_2X_2Y.va” 및 “TapSorting_2X_2YE.va”)로 병합되는 작업이 병렬로 수행됩니다. 연산자 FrameBufferRandomRead 를 통해, 이후 픽셀 깊이 (연산자 CastParallel)을 통해 카메라 탭의 픽셀이 결과 이미지에 올바르게 배치됩니다. FrameBufferRandomRead 에 대한 올바른 주소 입력은 box Address에서 구현되어 있습니다. 여기서는 사용된 탭 기하학적 구조에 따라 설계의 세부 사항이 다르지만 동일한 원리를 따릅니다. 그림 343에서는 "TapSorting_2X_2Y.va" 설계에 대한 주소 생성 과정을 확인할 수 있습니다.

"TapSorting_2X_2Y.va" 파일 내 HierarchicalBox 주소의 내용

그림 343. “TapSorting_2X_2Y.va” 파일 내 HierarchicalBox 주소 의 내용


연산자와 함께 CoordinateX, CoordinateY, ModuloCount 및 IS_GreaterThan 출력 이미지의 각 픽셀에 대해 입력 이미지의 해당 위치가 평가됩니다.

“TapSorting_8X_1Y.va” 및 “TapSorting_10X_1Y.va” 설계에서 “8X-1Y” 및 “10X-1Y” 탭 형상의 정렬을 위해 연산자 LineMemory 연산자가 사용됩니다. 그림 344에서 "TapSorting_8X_1Y.va"의 기본 설계 구조를 확인할 수 있습니다. "TapSorting_10X_1Y.va"의 설계 구조도 이와 동일합니다.

"TapSorting_8X_1Y.va"의 기본 설계 구조

그림 344. “TapSorting_8X_1Y.va”의 기본 설계 구조


8개 또는 10개의 수평 탭에 속한 픽셀들이 HierarchicalBox 내에서 재배열됩니다 재배열에서 재배열됩니다. 각 탭의 8개 픽셀은 64비트 비트 심도를 가진 하나의 픽셀로 병합됩니다. 8개 또는 10개의 탭은 병렬로 병합됩니다. 그런 다음 각 출력 픽셀에 해당하는 입력 이미지의 정확한 주소는 HierarchicalBox Sorting8X1Y 에서 계산됩니다(그림 345 참조).

HierarchicalBox Sorting_8X_1Y의 내용

그림 345. HierarchicalBox Sorting_8X_1Y의 내용


상자의 주소 생성 과정을 확인할 수 있습니다. 주소 의 주소 생성 과정을 확인할 수 있습니다.

"TapSorting_8X_1Y.va" 파일 내 HierarchicalBox 주소의 내용

그림 346. “TapSorting_8X_1Y.va” 파일의 HierarchicalBox 주소 내용